<?php

namespace JLPay\Models\Cashier;

use JLPay\Models\BaseResponse;

/**
 * 交易退款响应
 */
class TradeRefundResponse extends BaseResponse
{
    protected ?string $status = null;
    protected ?string $merchNo = null;
    protected ?string $transactionId = null;
    protected ?string $outTradeNo = null;
    protected ?string $chnTransactionId = null;
    protected ?string $oriOutTradeNo = null;
    protected ?string $oriTransactionId = null;
    protected ?string $totalAmount = null;
    protected ?string $orderTime = null;
    protected ?string $transTime = null;
    protected ?string $payType = null;

    /**
     * 获取状态
     *
     * @return string|null
     */
    public function getStatus(): ?string
    {
        return $this->status;
    }

    /**
     * 获取商户号
     *
     * @return string|null
     */
    public function getMerchNo(): ?string
    {
        return $this->merchNo;
    }

    /**
     * 获取交易ID
     *
     * @return string|null
     */
    public function getTransactionId(): ?string
    {
        return $this->transactionId;
    }

    /**
     * 获取外部交易号
     *
     * @return string|null
     */
    public function getOutTradeNo(): ?string
    {
        return $this->outTradeNo;
    }

    /**
     * 获取渠道交易ID
     *
     * @return string|null
     */
    public function getChnTransactionId(): ?string
    {
        return $this->chnTransactionId;
    }

    /**
     * 获取原外部交易号
     *
     * @return string|null
     */
    public function getOriOutTradeNo(): ?string
    {
        return $this->oriOutTradeNo;
    }

    /**
     * 获取原交易ID
     *
     * @return string|null
     */
    public function getOriTransactionId(): ?string
    {
        return $this->oriTransactionId;
    }

    /**
     * 获取总金额
     *
     * @return string|null
     */
    public function getTotalAmount(): ?string
    {
        return $this->totalAmount;
    }

    /**
     * 获取订单时间
     *
     * @return string|null
     */
    public function getOrderTime(): ?string
    {
        return $this->orderTime;
    }

    /**
     * 获取交易时间
     *
     * @return string|null
     */
    public function getTransTime(): ?string
    {
        return $this->transTime;
    }

    /**
     * 获取支付类型
     *
     * @return string|null
     */
    public function getPayType(): ?string
    {
        return $this->payType;
    }
} 